#include <memory>
#include <iostream>

using namespace std;

class A
{
    private:
    int d;
    public:
    A(int t): d(t)
    {
        cout << d << "A()" << endl;
    }
    ~A()
    {
        cout << d <<"~A()"<<endl;
    }
};

int main()
{
    shared_ptr<A> pa(new A(1));        //第一种使用方式，使用new出来的对象构造
    {
        auto pb = make_shared<A>(2);        //第二种使用方式，使用make_shared辅助函数
    }
    cout << "end" << endl;
}